package customer

import (
	"context"
	dto "git.mycaigou.com/gfyx/micro-gfyx-mp-api/infrastructure/dto/business_opportunity"
)

type CustomerServiceIface interface {
	// 获取备选项
	GetAllOptions(ctx context.Context, params []string) (interface{}, error)
	// 开发商动态
	GetFeeds(ctx context.Context, params map[string]interface{}) (interface{}, error)
	// 拿地列表
	TakeLand(ctx context.Context, params map[string]interface{}) (interface{}, error)
	// 开盘列表
	OpenedTrading(ctx context.Context, params map[string]interface{}) (interface{}, error)
	// 公司下拉选项
	CompanyOption(ctx context.Context, params map[string]interface{}) (interface{}, error)

	// 校验开发商是否在主档案
	CheckDeveloperMainData(ctx context.Context, params map[string]interface{}) (interface{}, error)
	// 申请反哺开发商主档案接口
	ApplyDeveloperMainData(ctx context.Context, params map[string]interface{}) (interface{}, error)

	/***************** 分割线  重构之后 ******************************/

	// GetDeveloperScoreDetail 获取好客户得分
	GetDeveloperScoreDetail(ctx context.Context, organizingCode string) (*dto.CustomerScore, error)

	// GetSupplierProject 工程单位合作案例
	GetSupplierProject(ctx context.Context, request *dto.SupplierProjectRequest) (*dto.SupplierProjectResponse, error)

	// GetBiddingList 采购需求
	GetBiddingList(ctx context.Context, request *dto.GetBiddingListRequest) (*dto.SearchBidResponse, error)
	// GetProjectLifeCycle 项目合并列表
	GetProjectLifeCycle(ctx context.Context, request *dto.GetProjectLifeCycleRequest) (*dto.SearchProjectResponse, error)
	// GetFeedList 客户动态列表
	GetFeedList(ctx context.Context, request *dto.GetFeedListRequest) (*dto.GetFeedListResponse, error)
	// GetInvestCompany 投资企业
	GetInvestCompany(ctx context.Context, request *dto.GetInvestCompanyRequest) (*dto.GetInvestCompanyResponse, error)
	// SearchCustomerList 找客户列表
	SearchCustomerList(ctx context.Context, request *dto.GetCustomerListRequest) (*dto.GetCustomerListResponse, error)
	// GetCustomerDetail 客户详情
	GetCustomerDetail(ctx context.Context, request *dto.GetCustomerDetailRequest) (*dto.CustomerDetail, error)
	// FuzzySearch 模糊搜索客户
	FuzzySearch(ctx context.Context, request *dto.FuzzySearchRequest) ([]*dto.FuzzySearchItem, error)
	// GetCustomerZxList 企业风险 - 失信被执行
	GetCustomerZxList(ctx context.Context, request *dto.GetCustomerRiskCommonRequest) (*dto.GetCustomerZxListResponse, error)
	// GetCustomerCourtRegister 企业风险 - 立案信息
	GetCustomerCourtRegister(ctx context.Context, request *dto.GetCustomerRiskCommonRequest) (*dto.GetCustomerCourtRegisterResponse, error)
	// GetCustomerLawSuit 企业风险 - 法律诉讼
	GetCustomerLawSuit(ctx context.Context, request *dto.GetCustomerRiskCommonRequest) (*dto.GetCustomerLawSuitResponse, error)
	// GetCustomerTaxIllegal 企业风险 - 税收违法
	GetCustomerTaxIllegal(ctx context.Context, request *dto.GetCustomerRiskCommonRequest) (*dto.GetCustomerTaxIllegalResponse, error)
	// GetCustomerRiskCount 企业风险-数量统计
	GetCustomerRiskCount(ctx context.Context, request *dto.GetCustomerRiskCountRequest) (*dto.GetCustomerRiskCountResponse, error)
}
